package com.john.market.interfaces;

import java.util.UUID;

import com.john.market.classes.Product;

/**
 * Update notifications interface
 *
 */
public interface IUpdatable {
	/**
	 * Purchase notification
	 * 
	 * @param product
	 * Updated product
	 * 
	 */
	public void onPurchased(UUID id, int amount);
	
	/**
	 * Update notification
	 * 
	 * @param product
	 * Updated product
	 * 
	 */
	public void onUpdated(Product product);
	
	/**
	 * Remove notification
	 * 
	 * @param id
	 * ID of the removed product
	 * 
	 */
	public void onRemoved(UUID id);
	
	/**
	 * Notice of the need to update
	 */
	public void onNeedRefresh();
	
}
